import java.io.IOException;
import java.io.RandomAccessFile;
import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.Scanner;

public class Raf {
    public static void main(String[] args) throws IOException {
        /*
         * 作业一：读取用户信息
         *
         * 要求:
         * 使用Raf读取"D:/刘景景的测试文件夹/user.txt"文件，输出里面的内容。
         *
         * 提示：
         * 1,循环读取该文件，循环次数应当是 文件长度/100
         * 2,读取每条记录时：首先读取32字节，这是用户名，将该字节按照UTF-8编码转换为字符串，
         *   转换后要trim，因为这个字符串含有空白字符。
         * 3,依次类推读取密码、昵称。之后再读取一个int值，这是年龄。
         * 4,输出格式例如:刘德华,123,华仔,22
         */
        Scanner scanner=new Scanner(System.in);
        RandomAccessFile raf=new RandomAccessFile("D:/刘景景的测试文件夹/user.txt","rw");
        raf.seek(raf.length());
        System.out.println("系统注册");
        //用户名
        System.out.println("请输入用户名：");
        String name=scanner.next();//23
        //密码
        System.out.println("请输入密码：");
        String passWord=scanner.next();//23
        //年龄
        System.out.println("请输入年龄：");
        int age=scanner.nextInt();//4
        System.out.println(name+","+passWord+","+age);


        byte[] data=name.getBytes(StandardCharsets.UTF_8);
        data=Arrays.copyOf(data,23);
        raf.write(data);

        data=passWord.getBytes(StandardCharsets.UTF_8);
        data=Arrays.copyOf(data,23);
        raf.write(data);

        raf.writeInt(age);



        raf.close();
        System.out.println("注册完毕");
    }
}
